package cn.iocoder.yudao.module.dify.controller.admin.fileprocessing.vo.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.time.Instant;

/**
 * 用于存放dify上传文件后
 */
@Data
public class DifyFileDTO {
    @JsonProperty("id")
    private String id;

    @JsonProperty("name")
    private String name;

    @JsonProperty("size")
    private Integer size;  // 使用包装类型以更好地处理可能的null值

    @JsonProperty("extension")
    private String extension;

    @JsonProperty("mime_type")
    private String mimeType;

    @JsonProperty("created_by")
    private String createdBy;

    @JsonProperty("created_at")
    private Instant createdAt;  // 使用Instant类型处理时间戳

    /**
     * 自定义反序列化方法处理秒级时间戳
     */
    @JsonProperty("created_at")
    public void setCreatedAt(Long timestamp) {
        this.createdAt = Instant.ofEpochSecond(timestamp);
    }
}
